package thinking

object Map使用 {
  def main(args: Array[String]): Unit = {
    var value = Map(1 -> "A", 2 -> "B", 3 -> "C")
    value.foreach(println)

    //map的取值
    //1. 这种方式会返回 Some,Some是Option的子类
    val maybeString = value.get(1)
    println(maybeString.get)
    val maybeString1 = value.get(5)
    println(maybeString1)
    //2.
    val str = value(1)
    println(str)
    //这种方式如果key不存在会直接报错,可以使用contains先判断在取值
    //3.getOrElse
    println(value.getOrElse(2, () => "haha"))
    println(value.getOrElse(5, "F"))

    //增加元素
    value+=((4,"D"))

    //删除元素(如果删除的元素不存在,那么也不会报错)
    value-=(1)

    //map的便利
    for((k,v) <-value){
      println(k,v)
    }



  }

}
